Type-Safe Prototype-Based Component Evolution

نویسنده

  • Matthias Zenger
چکیده

Component-based programming is currently carried out using mainstream object-oriented languages. These languages have to be used in a highly disciplined way to guarantee flexible component composition and extensibility. This paper investigates abstractions for component-oriented programming on the programming language level. We propose a simple prototype-based model for first-class components on top of a class-based object-oriented language. The model is formalized as an extension of Featherweight Java. Our calculus includes a minimal set of primitives to dynamically build, extend, and compose software components, while supporting features like explicit context dependencies, late composition, unanticipated component extensibility, and strong encapsulation. We present a type system for our calculus that ensures type-safe component definition, composition, and evolution.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Towards a Versioning Model for Component-based Software Assembly

The world of software development has rapidly changed in the last few years due to the adoption of component−based technologies. The classical software configuration management, which deals with source code versioning, becomes insufficient in the world where most components are distributed in a binary form. This paper focuses on solving versioning issues in the SOFA/DCUP component environment, ...

متن کامل

Towards Reusable Heterogeneous Data-Centric Disentangled Parts

This paper presents our ongoing research towards a safe system evolution. Our approach is based on data-centric, objectoriented systems. Within those systems we utilise (i) multi-dimensional separation of concerns, (iii) explicit, language-independent type declarations in the form of an ontology and (ii) component technology. With this combined approach it is possible to cope with a growing cod...

متن کامل

Integrating Segmentation and Paging Protection for Safe, Efficient and Transparent Software Extensions

The technological evolution towards extensible software architectures and component-based software development demands safe, efficient, flexible, and easy-touse extension mechanisms to provide protection among software modules residing in the same address space. While a number of software-based approaches have been proposed in the last several years, no clear winner emerges that satisfactorily ...

متن کامل

The Ninja

We present the design and implementation of the \Ninja Jukebox", an infrastructural service that allows a community of users to build a distributed, collaborative music repository that delivers digital music to Internet clients, and that performs simple collaborative ltering based on users' song preferences inferred by the service. The Jukebox, implemented in Java, was designed to allow rapid s...

متن کامل

Deja-vu.net a Framework for Evolution of Component-based Software Systems

Component Based Software Engineering (CBSE) focuses on the development of software systems composed from reusable binary components. In such component-based software systems, applications are evolved through the selective evolution of individual components. Despite its evident benefits, this ‘plug and play’ approach to software evolution is restricted by a number of practical problems. The evol...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2002